Convert two date difference in D,H,M,SΒΆ
Convert two date difference in days, hours, minutes, seconds.
from datetime import datetime, time
def date_diff_in_seconds(dt2, dt1):
timedelta = dt2 - dt1
return timedelta.days * 24 * 3600 + timedelta.seconds
def dhms_from_seconds(seconds):
minutes, seconds = divmod(seconds, 60)
hours, minutes = divmod(minutes, 60)
days, hours = divmod(hours, 24)
return (days, hours, minutes, seconds)
# test
date1 = datetime.strptime('2015-01-01 01:00:00', '%Y-%m-%d %H:%M:%S')
date2 = datetime.now()
print("%d days, %d hours, %d minutes, %d seconds" % \
dhms_from_seconds(date_diff_in_seconds(date2, date1)))
Output:
858 days, 12 hours, 34 minutes, 21 seconds